package com.new_wear.project.system.cst_user.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.new_wear.framework.aspectj.lang.annotation.Excel;
import com.new_wear.framework.web.domain.BaseEntity;
import java.util.Date;

/**
 * 用户 - 志愿者信息对象 cst_user
 * 
 * @author new_wear
 * @date 2019-12-30
 */
public class CstUser extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 用户ID */
    private Long id;

    /** 手机号 */
    @Excel(name = "手机号")
    private String mobile;

    /** null */
    @Excel(name = "null")
    private Integer salt;

    /** 用户密码双md5 */
    @Excel(name = "用户密码双md5")
    private String password;

    /** 用户名/昵称 */
    @Excel(name = "用户名/昵称")
    private String nickName;

    /** 用户头象 */
    @Excel(name = "用户头象")
    private String headImg;

    /** 真实姓名 */
    @Excel(name = "真实姓名")
    private String realName;

    /** token */
    @Excel(name = "token")
    private String accessToken;

    /** 过期时间 */
    @Excel(name = "过期时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date tokenExpire;

    /** 刷新token */
    @Excel(name = "刷新token")
    private String refreshToken;

    /** 区域ID */
    @Excel(name = "区域ID")
    private String areaId;

    /** 用户状态 0 disabled, 1正常 */
    @Excel(name = "用户状态 0 disabled, 1正常")
    private Integer status;

    /** 志愿者ID */
    @Excel(name = "志愿者ID")
    private Long vid;

    /** 0未知；1男；2女 */
    @Excel(name = "0未知；1男；2女")
    private String gender;

    /** 微信 */
    @Excel(name = "微信")
    private String weixin;

    /** QQ */
    @Excel(name = "QQ")
    private String qq;

    /** 设备唯一标识 */
    @Excel(name = "设备唯一标识")
    private String deviceId;

    /** 最后登录时间 */
    @Excel(name = "最后登录时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lastLoginTime;

    /** 最后登录IP */
    @Excel(name = "最后登录IP")
    private String lastLoginIp;

    /** 登录次数 */
    @Excel(name = "登录次数")
    private Integer loginCount;

    /** 修改时间 */
    @Excel(name = "修改时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date modifiedAt;

    /** 创建时间 */
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdAt;

    /** 注册IP */
    @Excel(name = "注册IP")
    private String createdIp;

    /** 是否关注公众号 */
    @Excel(name = "是否关注公众号")
    private String subscribe;

    /** 上传的图片头像 */
    @Excel(name = "上传的图片头像")
    private String upimages;

    /** 是否为志愿者 */
    @Excel(name = "是否为志愿者")
    private Integer isVolunteer;

    /** 是否是实践岗信息员 */
    @Excel(name = "是否是实践岗信息员")
    private Integer isPractice;

    /** 是否是领导，1是，0否 */
    @Excel(name = "是否是领导，1是，0否")
    private Integer isLeader;

    /** 绑定时间 */
    @Excel(name = "绑定时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date bindTime;

    /** 学习长时 */
    @Excel(name = "学习长时")
    private Integer studyTime;

    /** 摄像头群组id */
    @Excel(name = "摄像头群组id")
    private Integer cgid;

    /** 用户住址 */
    @Excel(name = "用户住址")
    private String address;

    /** 出生日期 */
    @Excel(name = "出生日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date birthday;

    private Long integral; //积分总和

    public Long getIntegral() {
        return this.integral;

    }

    public void setIntegral(Long integral) {
        this.integral = integral;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setMobile(String mobile) 
    {
        this.mobile = mobile;
    }

    public String getMobile() 
    {
        return mobile;
    }
    public void setSalt(Integer salt) 
    {
        this.salt = salt;
    }

    public Integer getSalt() 
    {
        return salt;
    }
    public void setPassword(String password) 
    {
        this.password = password;
    }

    public String getPassword() 
    {
        return password;
    }
    public void setNickName(String nickName) 
    {
        this.nickName = nickName;
    }

    public String getNickName() 
    {
        return nickName;
    }
    public void setHeadImg(String headImg) 
    {
        this.headImg = headImg;
    }

    public String getHeadImg() 
    {
        return headImg;
    }
    public void setRealName(String realName) 
    {
        this.realName = realName;
    }

    public String getRealName() 
    {
        return realName;
    }
    public void setAccessToken(String accessToken) 
    {
        this.accessToken = accessToken;
    }

    public String getAccessToken() 
    {
        return accessToken;
    }
    public void setTokenExpire(Date tokenExpire) 
    {
        this.tokenExpire = tokenExpire;
    }

    public Date getTokenExpire() 
    {
        return tokenExpire;
    }
    public void setRefreshToken(String refreshToken) 
    {
        this.refreshToken = refreshToken;
    }

    public String getRefreshToken() 
    {
        return refreshToken;
    }
    public void setAreaId(String areaId) 
    {
        this.areaId = areaId;
    }

    public String getAreaId() 
    {
        return areaId;
    }
    public void setStatus(Integer status) 
    {
        this.status = status;
    }

    public Integer getStatus() 
    {
        return status;
    }
    public void setVid(Long vid) 
    {
        this.vid = vid;
    }

    public Long getVid() 
    {
        return vid;
    }
    public void setGender(String gender) 
    {
        this.gender = gender;
    }

    public String getGender() 
    {
        return gender;
    }
    public void setWeixin(String weixin) 
    {
        this.weixin = weixin;
    }

    public String getWeixin() 
    {
        return weixin;
    }
    public void setQq(String qq) 
    {
        this.qq = qq;
    }

    public String getQq() 
    {
        return qq;
    }
    public void setDeviceId(String deviceId) 
    {
        this.deviceId = deviceId;
    }

    public String getDeviceId() 
    {
        return deviceId;
    }
    public void setLastLoginTime(Date lastLoginTime) 
    {
        this.lastLoginTime = lastLoginTime;
    }

    public Date getLastLoginTime() 
    {
        return lastLoginTime;
    }
    public void setLastLoginIp(String lastLoginIp) 
    {
        this.lastLoginIp = lastLoginIp;
    }

    public String getLastLoginIp() 
    {
        return lastLoginIp;
    }
    public void setLoginCount(Integer loginCount) 
    {
        this.loginCount = loginCount;
    }

    public Integer getLoginCount() 
    {
        return loginCount;
    }
    public void setModifiedAt(Date modifiedAt) 
    {
        this.modifiedAt = modifiedAt;
    }

    public Date getModifiedAt() 
    {
        return modifiedAt;
    }
    public void setCreatedAt(Date createdAt) 
    {
        this.createdAt = createdAt;
    }

    public Date getCreatedAt() 
    {
        return createdAt;
    }
    public void setCreatedIp(String createdIp) 
    {
        this.createdIp = createdIp;
    }

    public String getCreatedIp() 
    {
        return createdIp;
    }
    public void setSubscribe(String subscribe) 
    {
        this.subscribe = subscribe;
    }

    public String getSubscribe() 
    {
        return subscribe;
    }
    public void setUpimages(String upimages) 
    {
        this.upimages = upimages;
    }

    public String getUpimages() 
    {
        return upimages;
    }
    public void setIsVolunteer(Integer isVolunteer) 
    {
        this.isVolunteer = isVolunteer;
    }

    public Integer getIsVolunteer() 
    {
        return isVolunteer;
    }
    public void setIsPractice(Integer isPractice) 
    {
        this.isPractice = isPractice;
    }

    public Integer getIsPractice() 
    {
        return isPractice;
    }
    public void setIsLeader(Integer isLeader) 
    {
        this.isLeader = isLeader;
    }

    public Integer getIsLeader() 
    {
        return isLeader;
    }
    public void setBindTime(Date bindTime) 
    {
        this.bindTime = bindTime;
    }

    public Date getBindTime() 
    {
        return bindTime;
    }
    public void setStudyTime(Integer studyTime) 
    {
        this.studyTime = studyTime;
    }

    public Integer getStudyTime() 
    {
        return studyTime;
    }
    public void setCgid(Integer cgid) 
    {
        this.cgid = cgid;
    }

    public Integer getCgid() 
    {
        return cgid;
    }
    public void setAddress(String address) 
    {
        this.address = address;
    }

    public String getAddress() 
    {
        return address;
    }
    public void setBirthday(Date birthday) 
    {
        this.birthday = birthday;
    }

    public Date getBirthday() 
    {
        return birthday;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("mobile", getMobile())
            .append("salt", getSalt())
            .append("password", getPassword())
            .append("nickName", getNickName())
            .append("headImg", getHeadImg())
            .append("realName", getRealName())
            .append("accessToken", getAccessToken())
            .append("tokenExpire", getTokenExpire())
            .append("refreshToken", getRefreshToken())
            .append("areaId", getAreaId())
            .append("status", getStatus())
            .append("vid", getVid())
            .append("gender", getGender())
            .append("weixin", getWeixin())
            .append("qq", getQq())
            .append("deviceId", getDeviceId())
            .append("lastLoginTime", getLastLoginTime())
            .append("lastLoginIp", getLastLoginIp())
            .append("loginCount", getLoginCount())
            .append("modifiedAt", getModifiedAt())
            .append("createdAt", getCreatedAt())
            .append("createdIp", getCreatedIp())
            .append("subscribe", getSubscribe())
            .append("upimages", getUpimages())
            .append("isVolunteer", getIsVolunteer())
            .append("isPractice", getIsPractice())
            .append("isLeader", getIsLeader())
            .append("bindTime", getBindTime())
            .append("studyTime", getStudyTime())
            .append("cgid", getCgid())
            .append("address", getAddress())
            .append("birthday", getBirthday())
            .toString();
    }
}
